using System;
using System.Data;
using System.Configuration;
using System.Collections;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
using System.Web.Services;
using FEL.COM;
using System.Collections.Generic;
using FEL.BOD;
using FEL.APU;
using System.Globalization;

public partial class APU_APU_PEDIDO : PaginaBaseKCG 
{

    public Apu_Orden Orden_Actual
    {
        get
        {
            if (ViewState["APU_ORDEN"] == null)
                ViewState["APU_ORDEN"] = ObtenerOrdenAlta();
            return (Apu_Orden)ViewState["APU_ORDEN"];
        }
    }


    Apu_Orden ObtenerOrdenAlta()
    {
        FEL.APU.BO_Apu_Orden datos = new BO_Apu_Orden();
        return datos.GetById("", Scope, Request.QueryString["Apu_Orden_Id"])[0];

    }


    protected void Page_Load(object sender, EventArgs e)
    {
        base.Page_Load(sender, e);
        cargarBotones();

        fvapu_pedido.DataBound += new EventHandler(fvapu_pedido_DataBound);
    }

    void fvapu_pedido_DataBound(object sender, EventArgs e)
    {
        if (Fv.CurrentMode == FormViewMode.Insert)
        {
            TextBox Fecha = (TextBox)Fv.FindControl("Fecha");
            Fecha.Text = DateTime.Now.ToString();
        }
    }

    private void cargarBotones()
    {
        BtnOrden.Text = GetLocalResourceObject("BTN_APU_PEDIDO_ORDENRecursoKCG.Text").ToString();
        BtnOrden.ToolTip = GetLocalResourceObject("BTN_APU_PEDIDO_ORDENRecursoKCG.ToolTip").ToString();
        BtnPedidosBod.Text = GetLocalResourceObject("BTN_APU_PEDIDO_BODEGASRecursoKCG.Text").ToString();
        BtnPedidosBod.ToolTip = GetLocalResourceObject("BTN_APU_PEDIDO_BODEGASRecursoKCG.ToolTip").ToString();
        BtnEstructura.Text = GetLocalResourceObject("BTN_APU_PEDIDO_ESTRUCTURARecursoKCG.Text").ToString();
        BtnEstructura.ToolTip = GetLocalResourceObject("BTN_APU_PEDIDO_ESTRUCTURARecursoKCG.ToolTip").ToString();
        BtnListado.Text = GetLocalResourceObject("BTN_APU_PEDIDO_LISTADORecursoKCG.Text").ToString();
        BtnListado.ToolTip = GetLocalResourceObject("BTN_APU_PEDIDO_LISTADORecursoKCG.ToolTip").ToString();       
    }
    

    protected override void DefinirParametrosFijosDeInsercion(System.Collections.Generic.List<DictionaryEntry> param)
    {
        if (Request.QueryString.Count > 0)
        {
            param.Add(new DictionaryEntry("Apu_Orden_Id", Request.QueryString["Apu_Orden_Id"]));            
            param.Add(new DictionaryEntry("Apu_Orden_Codigo", Orden_Actual.Codigo));
            param.Add(new DictionaryEntry("Apu_Orden_Nombre", Orden_Actual.Nombre));

        }
        base.DefinirParametrosFijosDeInsercion(param);
    }

    protected void BtnOrden_Click(object sender, EventArgs e)
    {
        TextBox OrdenCodigo = (TextBox)Fv.FindControl("Apu_Orden_Codigo");
        Response.Redirect("~/APU/APU_ORDEN.aspx?Apu_Orden_Codigo=" + OrdenCodigo.Text);
    }

    protected void BtnPedidosBod_Click(object sender, EventArgs e)
    {
        TextBox PedidoId = (TextBox)Fv.FindControl("Id");
        Response.Redirect("~/APU/APU_PEDIDO_DET.aspx?Apu_Pedido_Id=" + PedidoId.Text);
    }

    protected void BtnEstructura_Click(object sender, EventArgs e)
    {
        TextBox EstructuraId = (TextBox)Fv.FindControl("Id");
        Response.Redirect("~/APU/APU_PEDIDO_ESTRUCTURA.aspx?Apu_Pedido_EStrucutura_Id=" + EstructuraId.Text);
    }

    protected void BtnListado_Click(object sender, EventArgs e)
    {
        TextBox PedidoId = (TextBox)Fv.FindControl("Id");
        Response.Redirect("~/APU/APU_PEDIDO_LISTADO.aspx?Apu_Pedido_Id=" + PedidoId.Text);
    }


    protected override CheckBox CbInsertarMemoria
    {
        get { return null; }
    }

    protected override Type TipoObjeto
    {
        get { return typeof(global::Apu_Pedido); }
    }

    protected override GridView Gv
    {
        get { return gvapu_pedido; }
    }

    protected override FormView Fv
    {
        get { return fvapu_pedido; }
    }

    protected override ObjectDataSource OdsGv
    {
        get { return odsgvapu_pedido; }
    }

    protected override ObjectDataSource OdsDv
    {
        get { return odsfvapu_pedido; }
    }

    protected override Button BResponderZoom
    {
        get { return Seleccionar; }
    }

    protected override Button BRegreso
    {
        get { return Atras; }
    }

    protected override Koala.KoalaWebControls.KFiltro KftFiltro
    {
        get { return kftFiltro; }
    }
    protected override string Contenedor
    {
        get { return "APU_PEDIDO"; }
    }

    protected void nav_Siguiente(object sender, EventArgs e)
    {
        Gv_SelectedIndexChanged(sender, e);
    }
    [WebMethod]
    static public string[] GetBodegas(string prefixText, int count)
    {
        if (count == 0) count = 10;

        Scope s = (Scope)HttpContext.Current.Session["Scope"];

        FEL.BOD.BO_Bod_Bodega boBodega = new BO_Bod_Bodega();

        List<Bod_Bodega> litBodega = boBodega.GetByLikeNombre("Nombre", s, prefixText + "%");

        List<string> opciones = new List<string>();
        for (int i = 0; i < litBodega.Count && i < count; i++)
        {
            string value = litBodega[i].Id + "||" +
                           litBodega[i].Codigo;                           

            opciones.Add(AjaxControlToolkit.AutoCompleteExtender.CreateAutoCompleteItem(litBodega[i].Nombre, value));
        }

        return opciones.ToArray();
    }    
}
